作業Log | 関連ページリストを吹き出し表示するUserScript
2020-10-04 19:24:35
少し改造してみる
19:25:39 まずはrefactoringしてみる
やりながらprogramの構造を調べる
21:19:17 改造終了
classを使った
JQueryをnative APIに書き換えた
21:19:45 試してみる
21:34:18 表示されない
e.targetの中身を調べる
21:35:16 #editor
にmouseenter event handlerを登録していたので、表示されないのも当たり前だった
編集画面全体へしか作用できない
linkが生成される度に、addEventListenerを登録する
22:28:07 バグ取り中
まだうまく表示されない
関連ページリストからの取り込みが出来ていない
22:31:25 関連ページリストは #editor
の外だった
そりゃ取得できないや
22:42:45 cardをうまく複製できていない?
孫要素がcloneされていない
22:53:11 カードは正常に表示されるようになった。しかし位置と色がおかしい
dark themeなのに、背景色が黒にならない
カードの表示位置が常に #editor
の一番下になる
cssが適用されていない可能性がある
cssをconsole.logで表示してみる
22:57:30 やはり適用されていなかった
23:02:35 位置指定系css propertiesは、末尾に px
をつけないといけないようだ
23:26:21 表示されるリンクと表示されないリンクとがある
hashtagは出てくるが、文中リンクのときは出てこない
23:28:31 hashtagかどうかではなく、半角英数かどうかが問題だった
href
からリンクの名前を取っているので、全角文字だとescapeされてしまう
decodeURIComponent
で逆変換をかける
23:31:02 成功
23:31:13 あとは位置を直す

23:35:06
子要素の変化を補足できていない?
テキスト編集は #editor
の孫要素だった
監視の対象外だった
23:48:17 孫要素を監視に加える
また変更がある度に #editor
中の全てのlinkにeventlistenerを登録するようにする
2020-10-05 00:16:49
文字が少し大きい
サムネイルの本文が十分に見えない
小さめにする
タイトルとサムネ本文との間を詰めた
タイトルを2行に収めた
00:37:08 いい感じ
とりあえずここまで
構文解析は飛ばした
流石にやっていられない
03:52:04 タイトル入れるの忘れてた
入れる

03:58:22 入れた
他にいくつか <div>
が抜けていたので入れた
03:58:47 こんな感じ
まあこれでいいだろう。
04:06:55 カードがたくさんあるときにスクロールバーが出てこないことに気づいた
カードが折り返し表示されてしまっている
04:28:01 ScrapScriptの元のstyleをもう一度引っ張ってくる

04:29:15 成功!
<div>
と float: none !important
の組み合わせでなんとかなった
04:48:10 読み込みに失敗した場合は何もしないようにする

05:00:33
こんどこそおしまい。
何故か tobackLinksData
の処理に失敗している
backlinks
が空っぽ
12:45:41 原因を究明する
13:00:39 型があっていなかった。直した
13:00:56 今度は表示するカードの選択ができていない
検索結果が空っぽ
これも型があっていないせいか?
13:02:08 data.title
と title
を取り違えていた
13:04:00 直った
13:04:13 出てきた問題
titleLc
を title
に直していない
13:05:42 これは今直す
13:07:33 titleLc
に統一したほうがよさそう
title
だと
と
の区別ができない

13:12:06 spaceを
_
に置換した
外部projectのページリストが出ないようになった
重複したカードの除去をやっていない
13:23:09 たくさんprojectを読み込むと、関連ページリストの計算が重くなる
WebWorkerに委託する必要があるな
今後の課題
14:05:03 今WebWorkerを使う形に書き換える
どうするか
その中でWebWorkerを呼び出す
15:06:27 終了。テストする
15:17:08 ページカードが二重に出てしまっている
flatMap
の合体で、重複を消していないのがいけないのか?
15:19:17 直してみた
15:20:07 違うっぽい
15:22:01 なんじゃこりゃ
15:24:19 何故か同じback linkが3つもある
15:26:43 わかってきた
ただの文字列ではなくObjectだから、 Set
で重複を除去できなくなっている?
15:35:39 直った
一旦一つの文字列にして評価した
15:35:54 JSON.stringify
を使ったほうが楽か。

15:39:41
ここまでで今日は終わりにしよう。
16:52:21 同じカードがまだ表示されている?
backLinksの方の重複をどうにかしないと

17:00:37 直った
2021-01-03 23:39:32 久々の更新
23:46:35 おかしいな、↑の通りにやっても動かない?
しかも

には実装されていない
23:59:49 できた!
ただスクロールが遅いな
50倍速にしよう
2021-01-04 00:11:58 まあこれでいいや
behavior: 'smooth'
もつけた